// 书写skuInfo接口函数

// 0. 引入axios对象
import request from '@/utils/request'
// 1. 用枚举保存接口
enum SkuInfoApi {
  saveSkuInfoApi = '/admin/product/saveSkuInfo',
  findBySpuIdApi = '/admin/product/findBySpuId',
  getAllSkuListApi = '/admin/product/list',
  // sku商品上架
  skuInfoOnSaleApi = '/admin/product/onSale',
  // sku商品下架
  skuInfoCancelSaleApi = '/admin/product/cancelSale',
  // 删除skuInfo商品
  deleteSkuInfoApi = 'admin/product/deleteSku',
  // 根据id查询一个skuInfo对象数据
  getSkuInfoApi = '/admin/product/getSkuById'
}
// 2. 写相 关的接口函数
// 2.1 存储skuInfo数据发送给服务器
export const reqSaveSkuInfo = (skuInfo) => {
  return request.post(SkuInfoApi.saveSkuInfoApi, skuInfo)
}

// 2.2 查询spu下面的相关sku数据
export const reqFindBySpuId = (spuId: number) => {
  return request.get(SkuInfoApi.findBySpuIdApi + `/${spuId}`)
}

// 2.3 查询所有的sku列表数据
export const reqGetAllSkuList = (page: number, limit: number) => {
  return request.get(SkuInfoApi.getAllSkuListApi + `/${page}/${limit}`)
}

// 2.4 sku商品上架
export const reqSkuInfoOnSale = (skuId: number) => {
  return request.get(SkuInfoApi.skuInfoOnSaleApi + `/${skuId}`)
}

// 2.5 sku商品下架
export const reqSkuInfoCancelSale = (skuId: number) => {
  return request.get(SkuInfoApi.skuInfoCancelSaleApi + `/${skuId}`)
}

// 2.6删除shuInfo商品
export const reqDeleteSkuInfo = (skuId: number) => {
  return request.delete(SkuInfoApi.deleteSkuInfoApi + `/${skuId}`)
}

// 2.7根据skuId查询一个skuInfo对象数据
export const reqGetOneSkuInfo = (skuId: number) => {
  return request.get(SkuInfoApi.getSkuInfoApi + `/${skuId}`)
}